﻿using System;

namespace CXW.Core.Services
{
    /// <summary>
    /// Interface for the MessageService.
    /// </summary>
    public interface IMessageService
    {
        /// <summary>
        /// Asks the user a Yes/No question, using "Yes" as the default button.
        /// Returns <c>true</c> if yes was clicked, <c>false</c> if no was clicked.
        /// </summary>
        bool AskQuestion(string question, string caption = null);

        /// <summary> Shows a info message. </summary>
        void ShowMessage(string message, string caption = null);

        /// <summary> Shows a warning message. </summary>
        void ShowWarning(string message, string caption = null);

        /// <summary> Shows an error. </summary>
        bool ShowError(string message, string caption = null);

        /// <summary> Shows an exception. </summary>
        bool ShowException(Exception ex, string message);
    }
}
